package com.app.shop.service.system;


import com.app.shop.util.SysModel;
import com.app.shop.entity.SysUser;
import com.app.shop.entity.query.SysUserQuery;
import com.app.shop.entity.show.SysUserShow;
import com.github.pagehelper.Page;

/**
 * 系统用户维护服务
 *
 * @author  chen li wei
 * @version 21:14 2019-5-10
 */
public interface SysUserService {

    /**
     * 查询系统用户列表
     * @param studentQuery 用户查询参数
     * @return 返回分页用户列表
     */
     Page<SysUser> getSysUserList(SysUserQuery studentQuery);

    /**
     * 重置用户密码
     * @param sysUserQuery 需要重置的用户信息
     */
     void resetUserPwd(SysUserQuery sysUserQuery);

    /**
     * 修改密码
     * @param sysUserQuery 修改密码的用户信息
     */
    SysModel editUserPwd(SysUserQuery sysUserQuery);

    /**
     * 用户账号启用
     * @param sysUserQuery 需要启用的用户信息
     */
     void updateUserStart(SysUserQuery sysUserQuery);

    /**
     * 用户账户禁用
     * @param sysUserQuery 需要禁用的用户信息
     */
     void updateUserStop(SysUserQuery sysUserQuery);

    /**
     * 根据用户ID查询用户信息
     * @param sysUserQuery 需要查询的用户信息
     * @return 返回查询用户详细信息
     */
     SysUserShow getUserInfo(SysUserQuery sysUserQuery);

    /**
     * 添加用户
     * @param sysUser 需要添加的用户信息
     * @return 返回用户添加情况
     */
     SysModel addUserInfo(SysUser sysUser);

    /**
     * 修改用户
     * @param sysUser 需要修改的用户信息
     * @return 返回用户修改情况
     */
     SysModel updateUserInfo(SysUser sysUser);
}
